# Author: hhh <hsumen@bunsenlabs.org>
# HiDPI tweaks: vinzv <vinz@vinzv.de>
# Theme: SoftWaves
# based on "Greybird" by Simon Steinbeiß
# Description: As is the original theme, this theme is 100% free and open source.

gtk-color-scheme	= "bg_color:#C8CFCB\nselected_bg_color:#74998B\nbase_color:#CFD6D2" # Background, base.
gtk-color-scheme	= "fg_color:#13071B\nselected_fg_color:#000000\ntext_color:#13071B" # Foreground, text. 
gtk-color-scheme	= "tooltip_bg_color:#C8CFCB\ntooltip_fg_color:#13071B" # Tooltips.
gtk-color-scheme	= "link_color:#2d71b8" # Hyperlinks
gtk-color-scheme	= "panel_bg:#C8CFCB" # same as bg_color
gtk-color-scheme	= "fm_color:#13071B" # same as fg_color
gtk-color-scheme	= "bg_color_dark:#C8CFCB\ntext_color_dark:#13071B"

gtk-icon-sizes          = "panel-applications-menu=48,48:panel-menu=48,48:panel=32,32:panel-button=32,32:gtk-menu=32,32:gtk-large-toolbar=48,48:gtk-small-toolbar=32,32:gtk-button=32,32:gtk-dialog=64,64" # Doubled size
gtk-button-images	= 0					# Disables icons for buttons with text
gtk-toolbar-style	= 0					# Disables text in toolbar
gtk-auto-mnemonics	= 1					# Disables ugly lines under menu items
gtk-cursor-theme-size = 48		# Resized for HiDPI

####################
## Default Styles ##
####################

style "default"
{
	GnomeHRef		::link_color  				= @link_color		
	GtkHTML			::link-color				= @link_color
 	GtkIMHtmlr		::hyperlink-color 			= @link_color
	GtkIMHtml		::hyperlink-color			= @link_color
	GtkWidget		::link-color				= @link_color
	GtkWidget		::visited-link-color			= @text_color

	GtkButton		::child-displacement-x 			= 1
	GtkButton		::child-displacement-y 			= 1
	GtkButton		::default-border       			= { 0, 0, 0, 0 }
	GtkCheckButton		::indicator-size       			= 30 # Doubled size for Firefox

	GtkEntry		::honors-transparent-bg-hint 		= 1
	GtkEntry		::progress-border			= { 3, 3, 3, 3 }
	GtkEntry		::state-hint 				= 0

	GtkImage		::x-ayatana-indicator-dynamic 		= 1

	GtkMenu			::horizontal-padding			= 0
	GtkMenu			::vertical-padding			= 0

	GtkPaned		::handle-size          			= 3

	GtkNotebook		::tab-overlap				=-2

	GtkProgressBar		::min-vertical-bar-width		= 10
	GtkProgressBar		::min-horizontal-bar-height		= 10

	GtkRange		::trough-border				= 0
	GtkRange		::slider-width				= 10
	GtkRange		::stepper-size				= 13
	GtkRange		::stepper_spacing			= 0
 
	GtkScale		::slider-length				= 30 # Doubled size
	GtkScale		::slider-width				= 12 # Doubled size
	GtkScale		::trough-side-details			= 1

	GtkScrollbar		::min-slider-length			= 100 # Doubled size 
	#GtkScrollbar		::slider-width				= 15 # Huh, Shimmer Project? This property isn't in the Reference Manual
	#GtkScrollbar		::activate-slider			= 1 # Wha?
	#GtkScrollbar		::trough-border				= 0 # Zah?
	GtkScrollbar		::has-backward-stepper 			= 1
	GtkScrollbar		::has-forward-stepper			= 1 

	GtkScrolledWindow	::scrollbar-spacing			= 0
	GtkScrolledWindow	::scrollbars-within-bevel		= 1

	GtkMenuBar		::internal-padding			= 0
	GtkMenuBar		::window-dragging			= 1

	GtkExpander		::expander-size				= 12
	GtkToolbar		::internal-padding			= 0
	GtkTreeView		::expander-size				= 10
	GtkTreeView		::vertical-separator			= 0
	GtkComboBox		::arrow-size				= 20 # Added for resizing

	GtkWidget		::focus-line-width			= 1
	GtkWidget		::focus-padding				= 0
	
	GtkWindow		::resize-grip-height			= 13
        GtkWindow		::resize-grip-width			= 13

	xthickness = 2 # Doubled size
	ythickness = 2 # Doubled size

	fg[NORMAL]        = @fg_color
	fg[PRELIGHT]      = @selected_fg_color
	fg[SELECTED]      = @selected_fg_color
	fg[ACTIVE]        = @selected_fg_color
	fg[INSENSITIVE]   = mix (0.4, @fg_color, @bg_color)

	bg[NORMAL]        = @bg_color
	bg[PRELIGHT]      = shade (0.88, @bg_color)
	bg[SELECTED]	  = @selected_bg_color
	bg[INSENSITIVE]   = @bg_color
	bg[ACTIVE]        = shade (0.95, @bg_color)

	base[NORMAL]      = @base_color
	base[PRELIGHT]    = shade (0.95, @bg_color)
	base[ACTIVE]      = @selected_bg_color
	base[SELECTED]    = @selected_bg_color
	base[INSENSITIVE] = @base_color

	text[NORMAL]      = @text_color
	text[PRELIGHT]    = @selected_fg_color
	text[ACTIVE]      = @fg_color
	text[SELECTED]    = @selected_fg_color
	text[INSENSITIVE] = darker (@bg_color)

	engine "murrine" 
	{
		animation           = FALSE
		arrowstyle          = 2                 # 0 = normal arrows, 1 = filled arrows		
		border_shades       = { 1.2, 1.0 }      # gradient to draw on border
		cellstyle	    = 0
		colorize_scrollbar  = TRUE		
		comboboxstyle       = 0                 # 0 = normal combobox, 1 = colorized combobox below arrow		
		contrast            = 0.4               # 0.8 for less contrast, more than 1.0 for more contrast on borders
		# default_button_color = mix (0.2, shade(0.9,@base_color), shade (0.9, @selected_bg_color))
		expanderstyle	    = 0
		focus_color         = shade (0.3,@selected_bg_color)
		focusstyle	    = 2
		glazestyle          = 1                 # 0 = flat highlight, 1 = curved highlight, 2 = concave style, 3 = top curved highlight, 4 = beryl highlight
		gradient_shades     = {1.2,1.0,1.0,0.9} #{1.1,1.0,1.0,0.87}
		glowstyle           = 4                 # 0,1,2,3,4
		glow_shade          = 1.1
		handlestyle	    = 1
		highlight_shade     = 1.0               # set highlight amount for buttons or widgets
		lightborder_shade   = 1.1               # sets lightborder amount for buttons or widgets
		lightborderstyle    = 0                 # 0 = lightborder on top side, 1 = lightborder on all sides
		listviewheaderstyle = 1                 # 0 = flat, 1 = glassy, 2 = raised
		listviewstyle       = 2                 # 0 = nothing, 1 = dotted, 2 = solid
		menubaritemstyle    = 0                 # 0 = menuitem look, 1 = button look
		menubarstyle        = 2                 # 0 = flat, 1 = glassy, 2 = gradient, 3 = striped
		menuitemstyle       = 0                 # 0 = flat, 1 = glassy, 2 = striped
		menustyle           = 0                 # 0 = no vertical menu stripe, 1 = display vertical menu stripe
		prelight_shade      = .9               # shade level for scrollbar's slider, comboboxstyle(1), and prelight state with gradient_colors		
		progressbarstyle    = 0                 # 0 = nothing, 1 = stripes, 2 = lines
		reliefstyle         = 3                 # 0 = flat, 1 = inset, 2 = shadow
		rgba                = FALSE             # FALSE = disabled, TRUE = enabled
		roundness           = 2                 # 0 = squared, 1 = old default, more will increase roundness
		scrollbarstyle      = 0                 # 0 = nothing, 1 = circles, 2 = handles, 3 = diagonal stripes, 4 = diagonal stripes and handles, 5 = horizontal stripes, 6 = horizontal stripes and handles
		separatorstyle      = 0                 # 0 = Hard seperators 1 = Smooth seperators
		sliderstyle         = 0                 # 0 = nothing added, 1 = handles
		stepperstyle        = 1                 # 0 = standard, 1 = integrated stepper handles, 2 = unknown
		shadow_shades       = { 1.0, 1.0 }      # gradient for shadows.		
		textstyle           = 0                 # 0 = normal text, 1 = inset		
		toolbarstyle        = 0                 # 0 = flat, 1 = glassy, 2 = gradient		
		trough_shades	    = { 0.75, 0.75 }	# draw gradient on trough of GtkScrollbar and GtkProgressbar
		#trough_border_shades = { 0.9, 0.7 }
	}
}

style "resize-grip"
{
	engine "pixmap"	{
        }
}

style "paned" = "default"
{
	engine "murrine"
	{
		contrast = 1.0
	}
}

### THEME MODULES ###

style "dark" {
	
	GtkMenuBar	:: shadow-type		= GTK_SHADOW_NONE
	
	bg[NORMAL]	= @bg_color_dark
	bg[ACTIVE]	= shade (0.7, @bg_color_dark)
	bg[PRELIGHT]	= shade (0.7, @bg_color_dark)
	bg[SELECTED]	= shade (0.6, @bg_color_dark)
	
	fg[NORMAL]	= @text_color_dark
	fg[PRELIGHT]	= @text_color_dark
	fg[ACTIVE]	= @text_color_dark
	fg[SELECTED]	= @text_color_dark
	
	text[NORMAL]	= @text_color_dark
	text[PRELIGHT]	= @text_color_dark
	text[ACTIVE]	= @text_color_dark
	text[SELECTED]	= @text_color_dark
	
	engine "murrine" 
	{
		roundness = 0 # Roundness of menu items.
	}
}

style "wide"
{
	xthickness = 2
	ythickness = 2
}

style "wider"
{
	xthickness = 3
	ythickness = 3
}

style "entry" = "wider"
{
	bg[SELECTED]		= mix (0.4, @selected_bg_color, @base_color)
	base[INSENSITIVE]	= shade (1.06, @bg_color)
	fg[SELECTED]		= @text_color
	
	engine "murrine"
	{
		contrast	= 0.4
		focus_color	= mix (0.1, @bg_color, shade (0.8, @selected_bg_color))
		reliefstyle	= 0
		border_shades	= {1.03,0.8}
	}
}

style "button" = "wider"
{	
	# bg[NORMAL]        = shade (1.02, @bg_color) 
	# bg[PRELIGHT]      = shade (1.09, @bg_color)
	# bg[ACTIVE]        = shade (0.85, @bg_color)
	# bg[SELECTED]      = shade (0.5, @selected_bg_color)  
	# bg[INSENSITIVE]   = shade (0.95, @bg_color)

  	engine "murrine" 
	{
		contrast            = 0.9
		highlight_shade     = 1.0
		lightborder_shade   = 1.2
		gradient_shades     = {1.05,1.0,0.97,0.97}
		border_shades       = { 1.1, 0.9 }
		shadow_shades       = {1.0,1.0}
		reliefstyle         = 0
		roundness	    = 2
	}
}

style "notebook-button" = "notebook-bg"
{
	xthickness = 3 # Width of tabs and notebook borders.
	ythickness = 3
}

style "notebook-bg"
{
	 bg[NORMAL] = shade (0.95, @base_color)
	 bg[ACTIVE] = shade (0.97, @bg_color)
	 fg[ACTIVE] = mix (0.8, @fg_color, shade (0.97, @bg_color))
}

style "notebook" = "notebook-bg"
{
	xthickness = 3 # Width of tabs and notebook borders.
	ythickness = 3 # Height of tabs and notebook borders.

	engine "murrine" {
		contrast		= .6
		gradient_shades		= {1.1,1.05,1.05,1.0}
		#focusstyle		= 2
		#lightborder_shade	= 1.16
	}
}

style "menu"
{
	ythickness        = 3
	xthickness        = 0
	GtkMenuBar	:: shadow-type		= GTK_SHADOW_NONE
	
	bg[SELECTED]      = @selected_bg_color
	bg[NORMAL]        = shade (1.1, @bg_color)
	bg[PRELIGHT]      = @selected_bg_color
	bg[ACTIVE]        = shade (1.1, @bg_color)
	bg[INSENSITIVE]   = shade (1.1, @bg_color)
	fg[NORMAL]        = @fg_color # Color for normal text.
	fg[PRELIGHT]      = @selected_fg_color
	fg[SELECTED]      = @selected_fg_color
	fg[ACTIVE]        = @selected_fg_color
	fg[INSENSITIVE]   = mix (0.4, @fg_color, @bg_color) # Text color for non-interactive menu items
	text[NORMAL]      = @text_color # Color for menu-item radio/checks.
	base[NORMAL]      = shade (1.1, @bg_color) # Color for menu-item radio/checks background.
	text[PRELIGHT]    = @fg_color
	text[SELECTED]    = @selected_fg_color
	text[ACTIVE]      = @selected_fg_color
	text[INSENSITIVE] = mix (0.4, @fg_color, @bg_color)
	
	engine "murrine" 
	{
		roundness = 0 # Roundness of menu items.
		gradient_shades = {1.25,1.1,1.1,1.0}
		contrast = 0.9
		lightborder_shade = 1.5
	}
}


style "menubar" = "menu"
{
	xthickness	= 3
	ythickness	= 2
	
	bg[NORMAL]	= @bg_color
	
	engine "murrine"
	{
		roundness = 0
	}
}

style "menubar-menuitem"
{
	ythickness        = 4
	xthickness        = 2
	
	bg[PRELIGHT]   = @selected_bg_color
	bg[SELECTED]   = @selected_bg_color
	fg[NORMAL]     = @fg_color
	fg[PRELIGHT]   = @selected_fg_color
	fg[SELECTED]   = @selected_fg_color
	text[NORMAL]   = @fg_color
	text[PRELIGHT] = @selected_fg_color
	text[SELECTED] = @selected_fg_color
	
	engine "murrine"
        {
		lightborder_shade = 1.5
        }
}

style "separator-menu-item"
{
	xthickness = 1
	ythickness = 0

	GtkSeparatorMenuItem::horizontal-padding = 2

	GtkWidget::wide-separators	= 1
	GtkWidget::separator-width	= 1
	GtkWidget::separator-height	= 7
}

style "treeview"
{
	bg[NORMAL]	= @bg_color
  	engine "murrine" 
	{
		roundness = 0
		gradient_shades     = {1.3,1.2,1.2,1.1}
	}
}

style "treeview-header" = "button"
{
	xthickness   = 2
	ythickness   = 1
	
	bg[NORMAL]	= shade (1.14, @bg_color)  # Color for treeview headers.
	bg[PRELIGHT]	= shade (0.98, @bg_color)  # Color for treeview header prelight.
	bg[ACTIVE]	= shade (0.85, @bg_color)  # Color for pressed-treeview.
  	
	engine "murrine" 
	{
		roundness = 0  # This makes treeview progressbars square.
		gradient_shades = {0.98,1.0,1.3,1.35}
	}
}

style "frame-title"
{
	fg[NORMAL] = @fg_color
}

style "tooltips" = "wider"
{
	xthickness = 7
	ythickness = 4

	bg[NORMAL]	= @tooltip_bg_color
	bg[SELECTED]	= @selected_bg_color
	fg[NORMAL]	= @tooltip_fg_color

	engine "murrine"
	{
		roundness	= 0
		rgba		= FALSE
	}
}

style "progressbar"
{
	xthickness   = 0
	ythickness   = 0

	fg[PRELIGHT]	= @selected_fg_color
	bg[NORMAL]	= shade (1.05, @bg_color)
	bg[SELECTED]	= shade (1.05, @selected_bg_color)

	engine "murrine"
	{
		gradient_shades = {1.15,1.05,1.0,0.95}
		trough_shades	= {1.15, 1.15}
		trough_border_shades	= { 0.8, 0.7 }
		roundness 	= 1
		contrast	= 0.8
		border_shades	= { 1.0, 0.8 }
		lightborder_shade   = 1.1
		glowstyle	= 0
		glow_shade	= 1.0
	}
}

style "scrollbar"
{
	GtkScrollbar::stepper-size	= 0
	GtkScrollbar::arrow-scaling	= 0.0
	
	bg[NORMAL]	= shade (0.85, @selected_bg_color)
	bg[ACTIVE]	= shade (0.85, @selected_bg_color)
	bg[PRELIGHT]	= shade (0.70, @selected_bg_color)
	bg[INSENSITIVE]	= shade (0.70, @selected_bg_color)

	engine "murrine"
	{
		colorize_scrollbar	= FALSE
		roundness	= 0
		border_shades	= {1.0, 1.0}
		trough_shades	= {0.95, 0.95}
		contrast	= 0.05
		gradient_shades	= {1.06,1.06,1.04,1.04}
	}
}

style "hscrollbar" {
}

style "vscrollbar" {
}

style "statusbar"
{
	xthickness = 2
}

style "comboboxentry"
{
	xthickness = 4
	text[NORMAL] = @text_color
	text[PRELIGHT] = @text_color

	fg[NORMAL] = @text_color
	fg[PRELIGHT] = @text_color

	engine "murrine"
	{
		contrast = 0.4
		reliefstyle = 0
		border_shades = {1.03,0.8}
		shadow_shades = {0.5,0.0}
	}
}

style "combo" = "comboboxentry"
{
	bg[ACTIVE] = shade (0.85, @bg_color) # Color for pressed-spinbuttons.
}

style "spin" = "combo"
{
	engine "murrine"
	{
		border_shades 		= {0.7, 0.8}
	}
}

style "scale" = "button"
{
	GtkWidget	::focus-line-width	= 0
	GtkWidget	::focus-padding		= 0

	bg[ACTIVE]		= shade (0.86, @bg_color)
	bg[NORMAL]		= shade (1.30, @bg_color)
	bg[PRELIGHT]		= mix (0.4, shade (0.9, @selected_bg_color), shade (1.05, @bg_color))
	bg[SELECTED]		= shade (0.9, @selected_bg_color)
	bg[INSENSITIVE]		= shade (0.98, @bg_color)

	engine "murrine"
	{
		border_shades 			= {1.0, 0.75}
		contrast			= 1.10
		lightborderstyle		= 1
		roundness			= 2
		trough_shades			= {0.9, 1.1}
		trough_border_shades		= {1.20, 1.20}
	}
}

style "vscale" = "scale"
{
}

style "hscale" = "scale"
{
}

style "radiocheck"
{
	bg[NORMAL]	= shade (1.06, @bg_color) 
	bg[PRELIGHT]	= shade (1.06, @bg_color)  
	bg[ACTIVE]	= shade (0.85, @bg_color)
	bg[SELECTED]	= @base_color
	bg[INSENSITIVE]	= shade (0.95, @bg_color)
	text[PRELIGHT]	= shade (0.8, @selected_bg_color)
	fg[ACTIVE]	= @fg_color
	fg[INSENSITIVE] = mix (0.4, @fg_color, @bg_color)

  	engine "murrine" 
	{
		border_shades		= { 0.9, 0.8 }
		contrast		= 0.8
		lightborder_shade	= 1.5
	}
}

style "toolbar" = "default"
{
	engine "murrine"
	{
		contrast = 1.13
		lightborder_shade = 1.0
		gradient_shades = {1.0,0.94,0.94,0.88}
	}
}

style "toolbar-separator" {
	xthickness = 0
	ythickness = 1

	GtkVSeparator::vertical-padding = 0
	GtkWidget::wide-separators = 1
	GtkWidget::separator-width = 7
	GtkWidget::separator-height = 1
	

	engine "murrine" {
		contrast = 1.0
		separatorstyle = 0
	}
}

style "infobar" {
	engine "murrine" {
	}
}

style "nautilus_location" {
	bg[NORMAL]  = mix (0.60, shade (1.05, @bg_color), @selected_bg_color)
}

style "xfce-header"
{
	base[NORMAL]	= shade (1.18, @bg_color)
	engine "murrine"
	{
		textstyle = 1
		text_shade = 0.85
	}
}

style "xfwm-tabwin"
{
	Xfwm4TabwinWidget::border-width = 1
	Xfwm4TabwinWidget::icon-size = 64

	bg[NORMAL]	= @bg_color
	bg[SELECTED]	= @selected_bg_color
	fg[NORMAL]	= @fg_color
	base[SELECTED]	= @base_color

	engine "murrine"
	{
		focusstyle = 0
	}
}

style "xfdesktop-icon-view"
{
	font_name = "bold"
	XfdesktopIconView::label-alpha = 0
	XfdesktopIconView::selected-label-alpha = 60
	fg[NORMAL] = shade (0.9, @selected_fg_color)
	fg[ACTIVE] = @selected_fg_color
	engine "murrine"
	{
		textstyle = 5
		text_shade = 0.05
	}
}

style "xfsm-logout"
{
	GtkDialog::content-area-border = 12
	GtkDialog::content-area-spacing = 6
	GtkDialog::action-area-spacing = 0

	bg[NORMAL]      = @bg_color
	bg[SELECTED]	= @bg_color # Border around the dialog
	fg[NORMAL]      = @fg_color

	engine "murrine"
        {
		contrast            = 1.2
		highlight_shade     = 1.00
		lightborder_shade   = 1.95  
		gradient_shades     = {1.2,1.1,0.95,0.93} 
		border_shades       = { 1.2,0.95 }
		reliefstyle         = 2
		shadow_shades	    = { 1.3, 1.7 }
        }	
}

style "calendar"
{
	fg[NORMAL]	= @fg_color
	fg[PRELIGHT]	= @selected_fg_color
	bg[NORMAL]	= @bg_color
	bg[PRELIGHT]	= @selected_bg_color
}

style "overlay-scrollbar"
{
	bg[SELECTED] = shade (1.0, @selected_bg_color)
	bg[INSENSITIVE] = shade (0.85, @bg_color)
	bg[ACTIVE] = shade (0.6, @bg_color)
}

###############################################################################
# The following part of the gtkrc applies the different styles to the widgets.
###############################################################################

class "GtkWindow*" style "resize-grip"

# Murrine default style is applied to every widget.
class "GtkWidget"    style "default"

# Increase the x/ythickness in some widgets.
class "GtkFrame"     style "wide"
class "GtkEntry"     style "entry"
class "GtkSeparator" style "wide"
class "GtkCalendar"  style "wide"
class "GtkToolbar"   style "toolbar"
class "GtkHandleBox*" style "toolbar"
class "GtkStatusbar" style "resize-grip"

class "GtkSpinButton"  style "spin"
class "GtkScale"       style "scale"
class "GtkVScale"      style "vscale"
class "GtkHScale"      style "hscale"

class "GtkScrollbar"   style "scrollbar"
class "GtkVScrollbar"  style "scrollbar"
class "GtkHScrollbar"  style "scrollbar"

class "GtkRadio*"	style "radiocheck"
class "GtkCheck*"	style "radiocheck"

# General matching following, the order is choosen so that the right styles override each other eg. progressbar needs to be more important then the menu match.
#widget_class "*<GtkNotebook>*<GtkEventBox>"     style "notebook"
#widget_class "*<GtkNotebook>*<GtkScrolledWindow>"     style "notebook"
#widget_class "*<GtkNotebook>*<GtkDrawingArea>"  style "notebook"
#widget_class "*<GtkNotebook>*<GtkLayout>"       style "notebook"
#widget_class "*<GtkNotebook>*<GtkLabel>"	style "notebook-button"
widget_class "*<GtkNotebook>*<GtkEventBox>"		style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkDrawingArea>"		style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkLayout>"		style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkViewport>"		style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkScrolledWindow>"	style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkToolbar>"	style "notebook-bg"
widget_class "*<GtkNotebook>*<GtkLabel>"		style "notebook-bg"

widget_class "*<GtkButton>"      style "button"
widget_class "*<GtkNotebook>"    style "notebook"
widget_class "*<GtkStatusbar>*"  style "statusbar"

widget_class "*<GtkNotebook>*<GtkButton>" style "notebook-button"
widget_class "*<GtkNotebook>*<GtkButton>*<GtkLabel>" style "notebook-button"

widget_class "*<GtkComboBoxEntry>*"	style "comboboxentry"
widget_class "*<GtkCombo>*"		style "combo"
widget_class "*<GtkViewport>*"		style "wider"
widget_class "*<GtkEntry>*"		style "wider"

widget_class "*<GtkMenuBar>.<GtkMenuItem>*" style "menubar-menuitem"
widget_class "*<GtkMenu>*"              style "menu"
widget_class "*<GtkMenuBar>*"		style "menubar"
widget_class "*<GtkSeparatorMenuItem>*" style "separator-menu-item"
# Scale widget in menus (e.g. ubuntu's sound indicator)
widget_class "*<GtkMenuItem>.*.<GtkScale>" style "scale"

widget_class "*.<GtkFrame>.<GtkLabel>" style "frame-title"
widget_class "*.<GtkTreeView>*"        style "treeview"

widget_class "*GtkCalendar*"	style "calendar"

widget_class "*GtkHPaned" style "paned"
widget_class "*GtkVPaned" style "paned"

widget_class "*<GtkProgress>"	       style "progressbar"
widget_class "*<GtkProgressBar>"       style "progressbar"

widget_class "*<GtkRadioButton>*"		style "radiocheck"
widget_class "*<GtkCheckButton>*"		style "radiocheck"

# Treeview header
widget_class "*.<GtkTreeView>.<GtkButton>"	style "treeview-header"
widget_class "*.<GtkCTree>.<GtkButton>"	style "treeview-header"
widget_class "*.<GtkList>.<GtkButton>"		style "treeview-header"
widget_class "*.<GtkCList>.<GtkButton>"	style "treeview-header"
widget_class "*GnmSimpleCanvas*"		style "treeview-header" # Gnumeric treeview-headers

# Xfce specific theming
widget_class "*XfceHeading*"		style "xfce-header"
widget "xfwm4-tabwin*"			style "xfwm-tabwin"
widget_class "*XfsmLogoutDialog*"	style "xfsm-logout"
widget_class "*XfdesktopIconView*"	style "xfdesktop-icon-view"

widget_class "*<OsScrollbar>"		style "overlay-scrollbar"
widget_class "*<OsThumb>"		style "overlay-scrollbar"

# The window of the tooltip is called "gtk-tooltip"
################################
# FIXME:
# This will not work if one embeds eg. a button into the tooltip.
# As far as I can tell right now we will need to rework the theme
# quite a bit to get this working correctly.
# (It will involve setting different priorities, etc.)
################################
widget "gtk-tooltip*"	style "tooltips"

###################################################
# SPECIAL CASES AND WORKAROUNDS
###################################################

# Special case the nautilus-extra-view-widget
# ToDo: A more generic approach for all applications that have a widget like this.
widget "*.nautilus-extra-view-widget" style : highest "nautilus_location"

# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646
# Note that the work around assumes that the combobox is _not_ in appears-as-list mode.
# This style does not affect GtkComboBoxEntry, it does have an effect on comboboxes in appears-as-list mode though.
style "text-is-fg-color-workaround"
{
	text[NORMAL]      = @fg_color
	text[PRELIGHT]    = @fg_color
	text[SELECTED]    = @selected_fg_color
	text[ACTIVE]      = @fg_color
	text[INSENSITIVE] = darker (@bg_color)
}
widget_class "*.<GtkComboBox>.<GtkCellView>"	style "text-is-fg-color-workaround"

style "menuitem-text-is-fg-color-workaround"
{
	text[NORMAL]        = @fg_color
	text[PRELIGHT]      = @selected_fg_color
	text[SELECTED]      = @selected_fg_color
	text[ACTIVE]        = @fg_color
	text[INSENSITIVE]   = darker (@bg_color)
}
widget "*.gtk-combobox-popup-menu.*"	style "menuitem-text-is-fg-color-workaround"

# Work around the usage of GtkLabel inside GtkListItems to display text.
# This breaks because the label is shown on a background that is based on the base color set.
style "fg-is-text-color-workaround"
{
	fg[NORMAL]      = @text_color
	fg[PRELIGHT]    = @selected_fg_color
	fg[ACTIVE]      = @selected_fg_color
	fg[SELECTED]    = @selected_fg_color
	fg[INSENSITIVE] = mix (0.4, @text_color, @bg_color)
}
widget_class "*<GtkListItem>*"		style "fg-is-text-color-workaround"
# The same problem also exists for GtkCList and GtkCTree.
# Only match GtkCList and not the parent widgets, because that would also change the headers.
widget_class "*<GtkCList>"		style "fg-is-text-color-workaround"
widget_class "*<EelEditableLabel>"	style "fg-is-text-color-workaround"

# panel theming###
#include "apps/xfce-panel.rc"


# application specific theming###
#include "apps/chromium.rc"
#include "apps/claws-mail.rc"
#include "apps/gmusicbrowser.rc"
#include "apps/terminal.rc"
#include "apps/thunar.rc"

